
#include "Kernel.h"

#include <string>
#include <iostream>

int main(int argc, char** argv)
{
	//////////////////////////////////////////////
	// SET UP SAFE RESOURCE BASE DIRECTORY LOOKUP
	//////////////////////////////////////////////
	std::string resource_dir = argv[0];
	resource_dir = resource_dir.substr(0, resource_dir.find_last_of("\\"));
	resource_dir = resource_dir.substr(0, resource_dir.find_last_of("\\"));
	resource_dir += "\\resources\\";

	//////////////////////////////////////////////
	// CONFIGURE KERNEL
	//////////////////////////////////////////////
	auto kernel = Kernel::getSingleton();
	kernel->config(resource_dir);

	//////////////////////////////////////////////
	// INITIALIZE KERNEL
	//////////////////////////////////////////////
	kernel->init(argc,argv);

	//////////////////////////////////////////
	// HEARTBEAT
	//////////////////////////////////////////
	kernel->run();

	//////////////////////////////////////////
	// CLEAN UP
	//////////////////////////////////////////
	kernel.reset();

	return 0;
}
